package com.chinawlx.wlxteacher.network.bean;

/**
 * 作者:吴名
 * 时间:16/8/3
 * 描述:登陆接口
 */
public class WLXLoginBean {

    private int Code;
    private String Msg;
    private DataBean Data;

    public int getCode() {
        return Code;
    }

    public void setCode(int Code) {
        this.Code = Code;
    }

    public String getMsg() {
        return Msg;
    }

    public void setMsg(String Msg) {
        this.Msg = Msg;
    }

    public DataBean getData() {
        return Data;
    }

    public void setData(DataBean Data) {
        this.Data = Data;
    }

    public static class DataBean {
        private UserBean user;

        public UserBean getUser() {
            return user;
        }

        public void setUser(UserBean user) {
            this.user = user;
        }

        public static class UserBean {
            private int id;
            private String username;
            private String mobile;
            private String email;
            private String password;
            private String salt;
            private int version;
            private ProfileBean profile;

            public int getId() {
                return id;
            }

            public void setId(int id) {
                this.id = id;
            }

            public String getUsername() {
                return username;
            }

            public void setUsername(String username) {
                this.username = username;
            }

            public String getMobile() {
                return mobile;
            }

            public void setMobile(String mobile) {
                this.mobile = mobile;
            }

            public String getEmail() {
                return email;
            }

            public void setEmail(String email) {
                this.email = email;
            }

            public String getPassword() {
                return password;
            }

            public void setPassword(String password) {
                this.password = password;
            }

            public String getSalt() {
                return salt;
            }

            public void setSalt(String salt) {
                this.salt = salt;
            }

            public int getVersion() {
                return version;
            }

            public void setVersion(int version) {
                this.version = version;
            }

            public ProfileBean getProfile() {
                return profile;
            }

            public void setProfile(ProfileBean profile) {
                this.profile = profile;
            }

            public static class ProfileBean {
                private int id;
                private int user_id;
                private String nickname;
                private SexBean sex;
                private String birthday;
                private String qq;
                private AvatarBean avatar;
                private RealnameBean realname;
                private LevelBean level;
                private LocationBean location;
                private int login_count;
                private int login_error_count;
                private String prev_login_ip;
                private String last_login_ip;
                private boolean is_approved;
                private boolean is_actived;
                private boolean is_locked;
                private UserTypeBean user_type;
                private Object status;
                private Object extend;
                private String ip;
                private String last_login_error_date;
                private String last_locked_date;
                private String prev_login_date;
                private String last_login_date;
                private String last_modified_date;
                private String creation_date;
                private int version;

                public int getId() {
                    return id;
                }

                public void setId(int id) {
                    this.id = id;
                }

                public int getUser_id() {
                    return user_id;
                }

                public void setUser_id(int user_id) {
                    this.user_id = user_id;
                }

                public String getNickname() {
                    return nickname;
                }

                public void setNickname(String nickname) {
                    this.nickname = nickname;
                }

                public SexBean getSex() {
                    return sex;
                }

                public void setSex(SexBean sex) {
                    this.sex = sex;
                }

                public String getBirthday() {
                    return birthday;
                }

                public void setBirthday(String birthday) {
                    this.birthday = birthday;
                }

                public String getQq() {
                    return qq;
                }

                public void setQq(String qq) {
                    this.qq = qq;
                }

                public AvatarBean getAvatar() {
                    return avatar;
                }

                public void setAvatar(AvatarBean avatar) {
                    this.avatar = avatar;
                }

                public RealnameBean getRealname() {
                    return realname;
                }

                public void setRealname(RealnameBean realname) {
                    this.realname = realname;
                }

                public LevelBean getLevel() {
                    return level;
                }

                public void setLevel(LevelBean level) {
                    this.level = level;
                }

                public LocationBean getLocation() {
                    return location;
                }

                public void setLocation(LocationBean location) {
                    this.location = location;
                }

                public int getLogin_count() {
                    return login_count;
                }

                public void setLogin_count(int login_count) {
                    this.login_count = login_count;
                }

                public int getLogin_error_count() {
                    return login_error_count;
                }

                public void setLogin_error_count(int login_error_count) {
                    this.login_error_count = login_error_count;
                }

                public String getPrev_login_ip() {
                    return prev_login_ip;
                }

                public void setPrev_login_ip(String prev_login_ip) {
                    this.prev_login_ip = prev_login_ip;
                }

                public String getLast_login_ip() {
                    return last_login_ip;
                }

                public void setLast_login_ip(String last_login_ip) {
                    this.last_login_ip = last_login_ip;
                }

                public boolean isIs_approved() {
                    return is_approved;
                }

                public void setIs_approved(boolean is_approved) {
                    this.is_approved = is_approved;
                }

                public boolean isIs_actived() {
                    return is_actived;
                }

                public void setIs_actived(boolean is_actived) {
                    this.is_actived = is_actived;
                }

                public boolean isIs_locked() {
                    return is_locked;
                }

                public void setIs_locked(boolean is_locked) {
                    this.is_locked = is_locked;
                }

                public UserTypeBean getUser_type() {
                    return user_type;
                }

                public void setUser_type(UserTypeBean user_type) {
                    this.user_type = user_type;
                }

                public Object getStatus() {
                    return status;
                }

                public void setStatus(Object status) {
                    this.status = status;
                }

                public Object getExtend() {
                    return extend;
                }

                public void setExtend(Object extend) {
                    this.extend = extend;
                }

                public String getIp() {
                    return ip;
                }

                public void setIp(String ip) {
                    this.ip = ip;
                }

                public String getLast_login_error_date() {
                    return last_login_error_date;
                }

                public void setLast_login_error_date(String last_login_error_date) {
                    this.last_login_error_date = last_login_error_date;
                }

                public String getLast_locked_date() {
                    return last_locked_date;
                }

                public void setLast_locked_date(String last_locked_date) {
                    this.last_locked_date = last_locked_date;
                }

                public String getPrev_login_date() {
                    return prev_login_date;
                }

                public void setPrev_login_date(String prev_login_date) {
                    this.prev_login_date = prev_login_date;
                }

                public String getLast_login_date() {
                    return last_login_date;
                }

                public void setLast_login_date(String last_login_date) {
                    this.last_login_date = last_login_date;
                }

                public String getLast_modified_date() {
                    return last_modified_date;
                }

                public void setLast_modified_date(String last_modified_date) {
                    this.last_modified_date = last_modified_date;
                }

                public String getCreation_date() {
                    return creation_date;
                }

                public void setCreation_date(String creation_date) {
                    this.creation_date = creation_date;
                }

                public int getVersion() {
                    return version;
                }

                public void setVersion(int version) {
                    this.version = version;
                }

                public static class SexBean {
                    private String key;
                    private String value;

                    public String getKey() {
                        return key;
                    }

                    public void setKey(String key) {
                        this.key = key;
                    }

                    public String getValue() {
                        return value;
                    }

                    public void setValue(String value) {
                        this.value = value;
                    }
                }

                public static class AvatarBean {
                    private int avatar_id;
                    private String url;

                    public int getAvatar_id() {
                        return avatar_id;
                    }

                    public void setAvatar_id(int avatar_id) {
                        this.avatar_id = avatar_id;
                    }

                    public String getUrl() {
                        return url;
                    }

                    public void setUrl(String url) {
                        this.url = url;
                    }
                }

                public static class RealnameBean {
                    private String name;
                    private String id_card;
                    private boolean is_verified;

                    public String getName() {
                        return name;
                    }

                    public void setName(String name) {
                        this.name = name;
                    }

                    public String getId_card() {
                        return id_card;
                    }

                    public void setId_card(String id_card) {
                        this.id_card = id_card;
                    }

                    public boolean isIs_verified() {
                        return is_verified;
                    }

                    public void setIs_verified(boolean is_verified) {
                        this.is_verified = is_verified;
                    }
                }

                public static class LevelBean {
                    private int level;
                    private String title;
                    private int score;
                    private NextBean next;

                    public int getLevel() {
                        return level;
                    }

                    public void setLevel(int level) {
                        this.level = level;
                    }

                    public String getTitle() {
                        return title;
                    }

                    public void setTitle(String title) {
                        this.title = title;
                    }

                    public int getScore() {
                        return score;
                    }

                    public void setScore(int score) {
                        this.score = score;
                    }

                    public NextBean getNext() {
                        return next;
                    }

                    public void setNext(NextBean next) {
                        this.next = next;
                    }

                    public static class NextBean {
                        private int level;
                        private String title;
                        private int score;
                        private Object next;

                        public int getLevel() {
                            return level;
                        }

                        public void setLevel(int level) {
                            this.level = level;
                        }

                        public String getTitle() {
                            return title;
                        }

                        public void setTitle(String title) {
                            this.title = title;
                        }

                        public int getScore() {
                            return score;
                        }

                        public void setScore(int score) {
                            this.score = score;
                        }

                        public Object getNext() {
                            return next;
                        }

                        public void setNext(Object next) {
                            this.next = next;
                        }
                    }
                }

                public static class LocationBean {
                    private ProvinceBean province;
                    private CityBean city;
                    private RegionBean region;
                    private String address;

                    public ProvinceBean getProvince() {
                        return province;
                    }

                    public void setProvince(ProvinceBean province) {
                        this.province = province;
                    }

                    public CityBean getCity() {
                        return city;
                    }

                    public void setCity(CityBean city) {
                        this.city = city;
                    }

                    public RegionBean getRegion() {
                        return region;
                    }

                    public void setRegion(RegionBean region) {
                        this.region = region;
                    }

                    public String getAddress() {
                        return address;
                    }

                    public void setAddress(String address) {
                        this.address = address;
                    }

                    public static class ProvinceBean {
                        private String key;
                        private String value;

                        public String getKey() {
                            return key;
                        }

                        public void setKey(String key) {
                            this.key = key;
                        }

                        public String getValue() {
                            return value;
                        }

                        public void setValue(String value) {
                            this.value = value;
                        }
                    }

                    public static class CityBean {
                        private String key;
                        private String value;

                        public String getKey() {
                            return key;
                        }

                        public void setKey(String key) {
                            this.key = key;
                        }

                        public String getValue() {
                            return value;
                        }

                        public void setValue(String value) {
                            this.value = value;
                        }
                    }

                    public static class RegionBean {
                        private String key;
                        private String value;

                        public String getKey() {
                            return key;
                        }

                        public void setKey(String key) {
                            this.key = key;
                        }

                        public String getValue() {
                            return value;
                        }

                        public void setValue(String value) {
                            this.value = value;
                        }
                    }
                }

                public static class UserTypeBean {
                    private String key;
                    private String value;

                    public String getKey() {
                        return key;
                    }

                    public void setKey(String key) {
                        this.key = key;
                    }

                    public String getValue() {
                        return value;
                    }

                    public void setValue(String value) {
                        this.value = value;
                    }
                }
            }
        }

        @Override
        public boolean equals(Object o) {
            if (this == o) return true;
            if (o == null || getClass() != o.getClass()) return false;

            DataBean dataBean = (DataBean) o;

            return user != null ? user.equals(dataBean.user) : dataBean.user == null;

        }

        @Override
        public int hashCode() {
            return user != null ? user.hashCode() : 0;
        }

        @Override
        public String toString() {
            return "DataBean{" +
                    "user=" + user +
                    '}';
        }
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        WLXLoginBean loginBean = (WLXLoginBean) o;

        if (Code != loginBean.Code) return false;
        if (Msg != null ? !Msg.equals(loginBean.Msg) : loginBean.Msg != null) return false;
        return Data != null ? Data.equals(loginBean.Data) : loginBean.Data == null;

    }

    @Override
    public int hashCode() {
        int result = Code;
        result = 31 * result + (Msg != null ? Msg.hashCode() : 0);
        result = 31 * result + (Data != null ? Data.hashCode() : 0);
        return result;
    }


    @Override
    public String toString() {
        return "WLXLoginBean{" +
                "Code=" + Code +
                ", Msg='" + Msg + '\'' +
                ", Data=" + Data +
                '}';
    }
}
